package br.com.sisgerenciamento.dao.usuario;

import java.util.ArrayList;

import br.com.sisgerenciamento.exceptions.AlterarException;
import br.com.sisgerenciamento.exceptions.ApplicationException;
import br.com.sisgerenciamento.exceptions.ExcluirException;
import br.com.sisgerenciamento.exceptions.InserirException;
import br.com.sisgerenciamento.model.usuario.UsuarioVO;

public interface UsuarioDAOService{

	UsuarioVO inserir(UsuarioVO vo) throws InserirException;
	
	UsuarioVO obterUsuarioLogado(Long codigo) throws ApplicationException;
	
	UsuarioVO obterUsuarioPorLogin(String login) throws ApplicationException;
	
	void alterar(UsuarioVO vo) throws AlterarException;

	void excluir(UsuarioVO vo) throws ExcluirException;
	
	ArrayList<UsuarioVO> listar() throws ApplicationException;

}
